package com.dongdong.controller;

import com.dongdong.result.PageBean;
import com.dongdong.result.PageResult;
import com.dongdong.result.Result;
import com.dongdong.service.TypeTemplateService;
import com.dongdong.vo.TypeTemplateVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/typeTemplate")
public class TypeTemplateController {

    @Autowired
    private TypeTemplateService typeTemplateService;

    /**
     * 分页模糊查询模版
     * @param bean
     * @return
     */
    @PostMapping("/FindTypeTemplateList")
    public Result FindTypeTemplateList(@RequestBody PageBean<TypeTemplateVO> bean){
        PageResult<TypeTemplateVO> pageResult = typeTemplateService.FindTypeTemplateList(bean);
        return Result.OK().setData(pageResult);
    }

    /**
     * 修改回显
     * @param id
     * @return
     */
    @GetMapping("/SelectTypeTemplateById")
    public Result SelectTypeTemplateById(@RequestParam Long id){
        TypeTemplateVO typeTemplateVO = typeTemplateService.SelectTypeTemplateById(id);
        return Result.OK().setData(typeTemplateVO);
    }

    /**
     * 增加修改模版
     * @param typeTemplateVO
     * @return
     */
    @PostMapping("/AddAndUpdateTypeTemplate")
    public Result AddAndUpdateTypeTemplate(@RequestBody TypeTemplateVO typeTemplateVO){
        if (typeTemplateVO.getId() == null){
            //增加模版
            typeTemplateService.InsertTypeTemplate(typeTemplateVO);
        }else {
            //修改模版
            typeTemplateService.UpdateTypeTemplate(typeTemplateVO);
        }
        return Result.OK();
    }

    /**
     * 删除模版
     * @param id
     * @return
     */
    @DeleteMapping("/DeleteTypeTemplateById")
    public Result DeleteTypeTemplateById(@RequestParam Long id){
        typeTemplateService.DeleteTypeTemplateById(id);
        return Result.OK();
    }
}
